{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 35,
   "id": "dcb25d5e",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "3.55\n",
      "2.97\n",
      "75.41\n",
      "68.71\n",
      "19.58\n",
      "10.61\n",
      "1.64\n",
      "0.43\n",
      "0.00\n",
      "0.00\n",
      "15.77\n",
      "27.54\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import ast\n",
    "import re\n",
    "import matplotlib.pyplot as plt\n",
    "list_a=np.arange(11)\n",
    "p1=pd.read_csv(\"18-19train_update.csv\",low_memory=False,usecols=list_a)\n",
    "p1.head()\n",
    "#GPA分析\n",
    "with_award_GPA=[]\n",
    "no_award_GPA=[]\n",
    "#体测成绩分析\n",
    "with_award_pe=[]\n",
    "no_award_pe=[]\n",
    "#阅读情况分析\n",
    "with_award_read=[]\n",
    "no_award_read=[]\n",
    "#荣誉情况分析\n",
    "with_award_glory=[]\n",
    "no_award_glory=[]\n",
    "#论文情况分析\n",
    "with_award_topic=[]\n",
    "no_award_topic=[]\n",
    "#活动分数分析\n",
    "with_award_mark=[]\n",
    "no_award_mark=[]\n",
    "\n",
    "for i in range(0,6906):\n",
    "    get=p1[\"类型\"][i]\n",
    "    if get==\"无\":\n",
    "        no_award_topic.append(p1[\"论文情况-1819\"][i])\n",
    "        no_award_read.append(p1[\"阅读情况\"][i])\n",
    "        no_award_glory.append(p1[\"荣誉情况\"][i])\n",
    "        if p1[\"GPA-2018-2019\"][i]>0:\n",
    "            no_award_GPA.append(p1[\"GPA-2018-2019\"][i])\n",
    "        if p1[\"2018-体测\"][i]>0:\n",
    "            no_award_pe.append(p1[\"2018-体测\"][i])\n",
    "        if p1[\"活动分数\"][i]>0:\n",
    "            no_award_mark.append(p1[\"活动分数\"][i])\n",
    "    elif get!=\"无\":\n",
    "        with_award_topic.append(p1[\"论文情况-1819\"][i])\n",
    "        with_award_read.append(p1[\"阅读情况\"][i])\n",
    "        with_award_glory.append(p1[\"荣誉情况\"][i])\n",
    "        if p1[\"GPA-2018-2019\"][i]>0:\n",
    "            with_award_GPA.append(p1[\"GPA-2018-2019\"][i])\n",
    "        if p1[\"2018-体测\"][i]>0:\n",
    "            with_award_pe.append(p1[\"2018-体测\"][i])\n",
    "        if p1[\"活动分数\"][i]>0:\n",
    "            with_award_mark.append(p1[\"活动分数\"][i])\n",
    "with_averge_GPA='{:.2f}'.format(np.mean(with_award_GPA))\n",
    "no_averge_GPA='{:.2f}'.format(np.mean(no_award_GPA))\n",
    "with_averge_pe='{:.2f}'.format(np.mean(with_award_pe))\n",
    "no_averge_pe='{:.2f}'.format(np.mean(no_award_pe))\n",
    "with_averge_read='{:.2f}'.format(np.mean(with_award_read))\n",
    "no_averge_read='{:.2f}'.format(np.mean(no_award_read))\n",
    "with_averge_glory='{:.2f}'.format(np.mean(with_award_glory))\n",
    "no_averge_glory='{:.2f}'.format(np.mean(no_award_glory))\n",
    "with_averge_topic='{:.2f}'.format(np.mean(with_award_topic))\n",
    "no_averge_topic='{:.2f}'.format(np.mean(no_award_topic))\n",
    "with_averge_mark='{:.2f}'.format(np.mean(with_award_mark))\n",
    "no_averge_mark='{:.2f}'.format(np.mean(no_award_mark))\n",
    "print(with_averge_GPA)\n",
    "print(no_averge_GPA)\n",
    "print(with_averge_pe)\n",
    "print(no_averge_pe)\n",
    "print(with_averge_read)\n",
    "print(no_averge_read)\n",
    "print(with_averge_glory)\n",
    "print(no_averge_glory)\n",
    "print(with_averge_topic)\n",
    "print(no_averge_topic)\n",
    "print(with_averge_mark)\n",
    "print(no_averge_mark)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "id": "867afca5",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[19.8, 19.8, 19.8, 19.8]\n",
      "[-79.2, -64.9, -52.3, -54.4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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0IiIiIjrKdCIiIiI6ynQiIiIiOsp0IiIiIjrKdCIiIiI6ynQiIiIiOsp0IiIiIjrKdCIiIiI6+nbtuXaEtWuuPdAriZLFxf3HhS4wCFDinsXpAhlT5xY3LtQYNRDIyIiIq6nQCMiIiKup0AjIiIirqdAIyIiIq6nQCMiIiKup0AjIiIirqdAIyIiIq6nQCMiIiKup0AjIiIirqdAIyIiIq6nQCMiIiKup0AjIiIirqdAIyIiIq6nQCMiIiKup0AjhW7QoEEYY7xTVFTUOWWOHz9OpUqVGDVq1Hnr+umnnyhZsiRz5swBIDMzk65duxISEkKrVq1IS0vzlu3cuTPLli0rwJaIFLw9e/bQu3dvqlevTunSpalZsyZDhgwBoG7duhhjCAgIoE6dOowaNYqzZ896t/3www8xxrBixYri2n25iuV1XL6Y43mODz74gN/97neULl0aY8wGAGNMkDHm38aY48aY5caYijnljTHxxpgHfuv+KtBIoUtNTSU2NhZrLdZali5dek6ZadOm+YWR/IwfP57s7Gzv/KxZs6hQoQIpKSmEh4czffp0AJYtW4a1lgce+M3/GyKFbufOndx5553UqFGDb7/9lsOHDxMfH0+FChW8ZRISEsjKymLevHm88847xMbGetfFxcVx44038v777xfH7stVLq/j8sUcz8H5u33qqad46623OHr0KMDjnlV9gKNAdWAb8BiAJ8gYa+1v/hSqQCOFLjU1lYoVK553/bRp02jRosV56/nxxx/57LPPiIiI8C5LTEykS5cuBAcH0759e3bv3k12djbDhg3jjTfeKKgmiBSK3r17061bN8aMGUP16tUJDg6madOmvPzyy37lAgMDadq0KX379vX2Oh4/fpylS5cyfvx4PvroI7KysoqjCXKVyu+4fKHjeY5hw4YxduxYWrZsSVBQENbabzyrIoD51tp0YBFQxxgTCIwHnrmcfVagkUJ35MiR8/4DjBkzhh49enD99deft57nnnuO4cOHU7p0ae+ysLAwEhISyMjIICEhgYiICKZMmUKbNm0ICwsrqCaIFLgdO3bwn//8h5EjR170NidPnqR8+fIAxMfHc/vtt3sD/aefflpYuyrXoPyOyxc6ngP88MMP7Nq1i27duuW1eifQwRhTDugAJAJPAZ9Ya3dezj4r0EihS01NJSoqikqVKtGxY0d27drlXZeYmEhcXBxDhw49bx2ffvop33//Pb169fJb3r9/f3bu3Em1atU4cOAA7dq1Y+bMmTz//POF0haRgrJ582Zq1apFpUqVLlg2KyuLVatWMXPmTP7yl78AzummmJgYjDFER0cTFxdX2Lss14jzHZfPdzzP8f3331O9enVef/11KlasSK1atTDG9Pes/jsQBuwDrgcWA32B/3e5+61AI4Xum2++4fTp02zYsIESJUrQuXNnAM6ePctjjz3G+PHjz5v4MzIyGDhwIH//+98JDAz0W1e+fHmWLl3K8ePH+fDDD3nllVcYMWIEGzdu5L777qNFixasWbOmMJsn8ptkZWVRsmRJ7/yePXv8Blump6cD0KFDB4KDgxk0aBBvv/02LVu25PDhw6xYsYIuXboAEBMTw8KFCzlx4kSxtEWuHhc6Lud3PPeVnp7O/v37KVWqFHv27MkZ9zXVGNPIWnvMWhtlrQ2x1sYALwNjgUbGmFXGmK+MMXf9ln0PvHARkcsTHBwMwE033URsbCzVqlVj7969vPPOOwQHB9O9e/fzbv/000/TsmVLmjdvft5y69atY/v27cycOZNGjRqxYsUK0tLS6NatGxs2bCiw9ogUhLp167J7925OnTrlvbrJWktSUhI33nijt1xCQgLt27f323bevHmcPn3abzxZeno6ixYtomvXrkXWBrn6jB079rzH5fyO5zVq1PCWqVKlCsHBwQwfPhyAdu3aAfwHuA/YmFPOGNMUuBmnh2YjcD9QEYgDmlzqvquHRorU6dOnAShbtiwzZ87ks88+834inT9/Pq+88gp169b122bmzJn8/e9/95bbsGEDvXr14r777vOWsdYyaNAgJk+ezKFDhyhXrhyhoaHUr1+f1NTUImyhyMVp2rQp1apV87tq6WLFxcXxyiuvsHHjRu/0+OOP67STXLaLPS6D//Hc180330xmZmbugeolgIycGWOMAd4EngaqABnW2oPW2h3Ahc/D5kGBRgrd7NmzSUtLIzk5mQEDBtCuXTsqVqzITz/95L30z1pLly5dePnll0lKSvLb3reMtZYmTZrwzjvvsGrVKm+ZuXPnEh4eTtOmTalUqRLJycns2LGD1atXU7ly5aJtsMhFCAwM5O2332bkyJFMnz6d1NRUMjIyWLt27Xm3S0lJ4csvv6R79+7UrVvXOz366KMsWbKEY8eOFVEL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iRPe399++21iYmKoUaMGo0ePZvTo0X7jx0JDQ3n11VcvtZlyjZo5cyZJSUl+x+P58+czZ84c72nNhIQEoqKiKFGixIWq6wAsymuFcR7gTWAQUAXIsNYeBA4aY87bpahAI8Vm9uzZPPzwwxw7downnniCdu3aUbFiRb777js2b97MV199dd4ws3r1apKTk2nbti0HDx5k5MiRPPLII35l5s6dS3h4OE2bNuX06dMkJyezY8cODhw4kOeYHJHLlXP10D/+8Q/+/Oc/s3XrVu9VToMGDaJ+/fr06dOH7du307VrV1555RVvF/0NN9xA9+7d2bdvH8HBwed9nEmTJvnduwmgZs2agHO6dvbs2axbtw6AjIwM3nnnHRYsWOBXft++faxZs4bOnTsXVPPlKvXTTz/5zUdHRxMREeG9Fw04V/n16tXrYqr7AzAnn3V/AbZZa9cZY0oCtY0x9YHrgSPnq1SnnKTYzJgxgxo1anDnnXdStWpV7yWse/bsITMzk9KlS/vdpGny5Mns3buXevXqkZKSQvny5Rk/fjzVq1enZcuWtGjRwq/L/fjx44wdO5axY8cCULJkScaNG0ezZs3o2bMnb731VrG0W65uN9xwA3PmzCEqKoqFCxeyatUqGjduzLZt23j88cf55z//yVNPPcWJEydo0KAB33//PVu3buW5556jd+/e/PLLL8TExNCmTRuOHTvmd6rJ1+DBg/3uRxMZGcnRo0cBmDBhAg8++CB16tRh3759tG3bloceeogGDRpgjCEryxmHuXXr1osemCxyPmfPnmXz5s00bNjQb3nOMdsYUx3AGFMVqAZsyl2HZ2zNCM+EtfY08BzwX5wA9GTubXyph0aKzZo1eY/t6tChQ5430cvx448/AlC9enW+++67fMuFhISwfft2v2U9evSgR48ev2FvRS5OyZIladeuXb7rAwMD2b17Nw8//DAxMTFkZmayYsUKrrvuOm6//XbeeOMNJkyYwOuvv05ISAgRERF51pO7h+bUqVPe+zTde++91KpVi2+//Za2bdsyaNAgRowYATiBKzMzk/r165OVlcUbb7xRgK2Xa0Xu+3kFBAR479Tuq0aNGjnH7BQAa+1+IM+ud2vtcZyxM77L3gPeu5h9UqARESkgAQEB+fao+Hr00Uex1nL48GGqVKniXV6pUiXGjBkDwNChQy/qMVeuXEm/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jx6d52mBli1bMmbMGFavXk2tWrVIT0/nueeeo3Xr1owcOZJbbrkFgI0bN/L444/Tv39/evXqxapVq5g3bx5Tp06lb9++REdH+90V9tSpU94A89lnn1GrVi1OnjxJ27ZtGTRoECNGjACcO8PeeeednDx5kqysLN544w2/y8QDhwwprGdLLkJ2Pj1yV4FCv6DItWNoRESuRG+88cY5y5YsWULfvn0JCAigdu3a3H777TRr1gxwrjyMjo4+5zRBo0aN+O9//8vZs2fP+3grV66kX79+WGvp2rUr4Iy7ATh79ixff/01derU8ZYPCgpi8+bNl9NEkSuSemiuTNfOi6IeGnGzpYsvXMaHtdZvvNmVSD00xUs9NL+dxtCIiBSRKz3MiLiZAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLievm37yqQXRURErib6tm0RERGRC1GgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER1wss7h2QIhDVrrj3QOTqtHRxce9BgQscMqS4d6HQZU+cWNy7IIVAPTQiIiLiego0IiIi4noKNCIiIuJ6CjQiIiLiego0IiIi4noKNCIiIuJ6CjQiIiLiego0IiIi4noKNCIiIuJ6CjQiIiLiego0IiIi4noKNCIiIuJ6CjQiIiLiego0IiJXgLNnzxb3Loi4mgJNITHG9DTG2DymR4wxDYwxXxhjMowxm4wxTfKqY/r06dSqVYvg4GCioqLYvXs3AJmZmXTt2pWQkBBatWpFWlqad5vOnTuzbNmyImmjiORt+fLl9OzZ0zvf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\n",
      "text/plain": [
       "<Figure size 576x360 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = [\"荣誉情况\", \"阅读情况\", \"体测情况\",\"GPA\"]\n",
    "y = [20.8, 35.1, 47.7, 45.6]\n",
    "z = [79.2, 64.9, 52.3, 54.4]\n",
    "# 增加一个固定维度，长度与上述数据一样\n",
    "fix_value = []\n",
    "# 求出数据y和z的最大值，取其1/4的值作为固定长度\n",
    "value_max = max(max(y), max(z))\n",
    "fix_temp = value_max / 4\n",
    "for i in range(len(x)):\n",
    "    fix_value.append(fix_temp)\n",
    "print(fix_value)\n",
    "# 将y，z其中一个维度变为负值，我们选择z\n",
    "z_ne = [-i for i in z]\n",
    "print(z_ne)\n",
    " \n",
    "# 设置中文显示为微软雅黑\n",
    "plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']\n",
    "# 设置图表默认字体为12\n",
    "plt.rcParams['font.size'] = 12\n",
    "# 设置画布大小\n",
    "plt.figure(figsize=(8, 5))\n",
    "# 画条形图,设置颜色和柱宽，将fix_value,y,z_ne依次画进图中\n",
    "plt.barh(x, fix_value, color='w', height=0.5)\n",
    "plt.barh(x, y, left=fix_value, color='#037171', label='未获奖', height=0.5)\n",
    "plt.barh(x, z_ne, color='#FF474A', height=0.5, label='获奖')\n",
    "# 添加数据标签，将fix_value的x标签显示出来，y和z_ne的数据标签显示出来\n",
    "for a, b in zip(x, fix_value):\n",
    "    plt.text(b/2, a, '%s' % str(a), ha='center', va='center', fontsize=12)\n",
    "for a, b in zip(x, y):\n",
    "    plt.text(b + fix_temp + value_max / 20, a, \"      \"+str(b)+\"%\", ha='center', va='center')\n",
    "for a, b in zip(x, z):\n",
    "    plt.text(-b - value_max / 20 -3, a, str(b)+\"%\", ha='center', va='center')\n",
    "# 坐标轴刻度不显示\n",
    "plt.xticks([])\n",
    "plt.yticks([])\n",
    "# 添加图例，自定义位置\n",
    "plt.legend(bbox_to_anchor=(-0.02, 0.5), frameon=False)\n",
    "# 添加标题，并设置字体\n",
    "plt.title(label='18-19学年获奖与未获奖学生对比图', fontsize=14, fontweight='bold')\n",
    "# 设置绘图区域边框不可见\n",
    "ax = plt.gca()\n",
    "ax.set_axisbelow(True)\n",
    "# 设置绘图区域边框不可见\n",
    "[ax.spines[loc_axis].set_visible(False) for loc_axis in ['bottom', 'top', 'right', 'left']]\n",
    "# 使布局更合理\n",
    "plt.tight_layout()\n",
    "plt.show()\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "id": "9dcf749f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "3.55\n",
      "2.89\n",
      "75.05\n",
      "68.29\n",
      "15.67\n",
      "9.92\n",
      "1.26\n",
      "0.22\n",
      "0.01\n",
      "0.00\n",
      "30.50\n",
      "22.44\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import ast\n",
    "import re\n",
    "import matplotlib.pyplot as plt\n",
    "list_a=np.arange(11)\n",
    "p1=pd.read_csv(\"19-20train_update.csv\",low_memory=False,usecols=list_a)\n",
    "p1.head()\n",
    "#GPA分析\n",
    "with_award_GPA=[]\n",
    "no_award_GPA=[]\n",
    "#体测成绩分析\n",
    "with_award_pe=[]\n",
    "no_award_pe=[]\n",
    "#阅读情况分析\n",
    "with_award_read=[]\n",
    "no_award_read=[]\n",
    "#荣誉情况分析\n",
    "with_award_glory=[]\n",
    "no_award_glory=[]\n",
    "#论文情况分析\n",
    "with_award_topic=[]\n",
    "no_award_topic=[]\n",
    "#活动分数分析\n",
    "with_award_mark=[]\n",
    "no_award_mark=[]\n",
    "\n",
    "for i in range(0,6906):\n",
    "    get=p1[\"类型\"][i]\n",
    "    if get==\"无\":\n",
    "        no_award_topic.append(p1[\"论文情况-1920\"][i])\n",
    "        no_award_read.append(p1[\"阅读情况\"][i])\n",
    "        no_award_glory.append(p1[\"荣誉情况\"][i])\n",
    "        if p1[\"GPA-2019-2020\"][i]>0:\n",
    "            no_award_GPA.append(p1[\"GPA-2019-2020\"][i])\n",
    "        if p1[\"2019-体测\"][i]>0:\n",
    "            no_award_pe.append(p1[\"2019-体测\"][i])\n",
    "        if p1[\"活动分数\"][i]>0:\n",
    "            no_award_mark.append(p1[\"活动分数\"][i])\n",
    "    elif get!=\"无\":\n",
    "        with_award_topic.append(p1[\"论文情况-1920\"][i])\n",
    "        with_award_read.append(p1[\"阅读情况\"][i])\n",
    "        with_award_glory.append(p1[\"荣誉情况\"][i])\n",
    "        if p1[\"GPA-2019-2020\"][i]>0:\n",
    "            with_award_GPA.append(p1[\"GPA-2019-2020\"][i])\n",
    "        if p1[\"2019-体测\"][i]>0:\n",
    "            with_award_pe.append(p1[\"2019-体测\"][i])\n",
    "        if p1[\"活动分数\"][i]>0:\n",
    "            with_award_mark.append(p1[\"活动分数\"][i])\n",
    "with_averge_GPA='{:.2f}'.format(np.mean(with_award_GPA))\n",
    "no_averge_GPA='{:.2f}'.format(np.mean(no_award_GPA))\n",
    "with_averge_pe='{:.2f}'.format(np.mean(with_award_pe))\n",
    "no_averge_pe='{:.2f}'.format(np.mean(no_award_pe))\n",
    "with_averge_read='{:.2f}'.format(np.mean(with_award_read))\n",
    "no_averge_read='{:.2f}'.format(np.mean(no_award_read))\n",
    "with_averge_glory='{:.2f}'.format(np.mean(with_award_glory))\n",
    "no_averge_glory='{:.2f}'.format(np.mean(no_award_glory))\n",
    "with_averge_topic='{:.2f}'.format(np.mean(with_award_topic))\n",
    "no_averge_topic='{:.2f}'.format(np.mean(no_award_topic))\n",
    "with_averge_mark='{:.2f}'.format(np.mean(with_award_mark))\n",
    "no_averge_mark='{:.2f}'.format(np.mean(no_award_mark))\n",
    "print(with_averge_GPA)\n",
    "print(no_averge_GPA)\n",
    "print(with_averge_pe)\n",
    "print(no_averge_pe)\n",
    "print(with_averge_read)\n",
    "print(no_averge_read)\n",
    "print(with_averge_glory)\n",
    "print(no_averge_glory)\n",
    "print(with_averge_topic)\n",
    "print(no_averge_topic)\n",
    "print(with_averge_mark)\n",
    "print(no_averge_mark)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "id": "bbe6d86d",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[21.275, 21.275, 21.275, 21.275, 21.275]\n",
      "[-57.6, -85.1, -61.2, -52.4, -55.2]\n"
     ]
    },
    {
     "data": {
      "image/png": "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3klcXByhoaH07NnTu89ay+jRo73DruXKlWP+/PnUqVOHlStXphkmELmYPn360LNnT6677rp0958+fZpZs2bx3XffZVRFdeBXY8xGoBqwGuhqrY02xvQDvgbOAE/jBJkp1tojl3p+CjTiGuvXrydv3rwcPHiQ//znP7Rq1YrNmzd798fFxdGuXTsOHTrEypUr0xx/6tQpevXqxfTp071zE1IUKlSIZcuWede7du3KgAED2LRpE6+88grnzp1jxIgRNGjQIOsaKNekcePG8Z///Me7fuLECT744AMWL17M8uXLadeuHaNHj2bIkCFMnjyZ559/np07dwLO3JuM5oGB0zNZvnx5Nm7cSPPmzcmbNy/btm1LUy4gIIBevXp5148dOwbA5s2bKV++PHFxcQQHBxMTE0OpUqUy+u9a/sGWLl3K1q1bmTVrFj///HO6ZT7++GNuvPFGbrzxxoyqCQSaAR1wemVm4cydaWWtnQ3MBjDGVAaGAQ2MMeOBesAG4Dlr7fmMKteQk7hGYGAgAQEB3HDDDURERLBlyxaio6MB+L//+z9uu+028ufPz9q1aylZsmSa459//nnuvffeNFeWpLZhwwZ2795Nx44d6dGjB3PmzGHatGl+bwgil2ry5Ml+PYlDhgyhbdu23rktXbt2ZebMmezdu5ccOXIwbtw4brnlFsAJHgUKFMiw7oiICHLk+PPP+OzZszlx4gSVK1f2WwYPHuwtc+DAAUJCQsidOzcvvPACo0ePpn379nz++efUrl2bdevW8cADD2T20yAuduzYMbp168akSZP8hvdTmz17Nu3atbtQVUeBydbaXdbao8CbwD3plBsNhAOPAHHW2ttwwlCLC1WuHhpxpbNnzwKQP39+rLW0bduWxo0bM378+Az/o50yZQoAkyZN8m57/PHHmTFjhvcSWGstvXv3ZuzYsRw9epQCBQoQHBxMcHAwsbGxWdsouSZVrFjR+/3XX3/Nhx9+yLZt24iPjwecoP7yyy/Trl07vvrqK0aOHEnt2rUB2LFjByVKlLisx/voo49YsmSJ37bTp097v58wYQLt2rWjdOnSDB48mMGDB/vNEwsODmbo0KGX20y5hi1atIjo6Og0/wwaY5g+fTpdunQhPj6eVatWMX78+AtVtQsI8lnPCZxKVWcYgLV2mTHmPWCBZ9c6oMqFKlegEdeYNm0arVu35sSJE/To0YNmzZoRFBTETz/9xJYtW/j2228v2D1vrfVbr1u3Lr169aJLly7ebTNnzqRatWrUq1ePs2fPcvDgQfbs2cORI0fSnZMjcqlSrh56//33eeyxx9ixY4f3KqfevXtTpUoVnnjiCXbv3k379u15/fXXvfO8ypQpQ8eOHTl8+DCBgYEXfJzRo0f73aMJoGzZsoAzLDtt2jQ2bNgAOMOw06dPZ8GCBX7lDx8+zNq1a2nVqlVmNV9crHPnznTu3Nm7vm3bNmrUqOH3N3XNmjVcd911VKlywcwxCfjUGLMYiAZeAeak7DTG5AKGA208mw4CzYwx3wFhwNQLVa4hJ3GNyZMnU7p0aW699VZKlCjhvbQ1KiqKxMRE8uTJ43djpzFjxhAdHU3lypWJiYm5aP0nT55k2LBhDBs2DIBcuXIxfPhwGjZsSJcuXXj33XeztH1ybStTpgwzZswgNDSUhQsXsmrVKmrXrs2uXbt45pln+N///sdzzz3H6dOnqVGjBjt37mTHjh2Eh4fTtWtXDh06RLt27QgLC+PEiRN+Q02++vTpQ/369f2W48ePAzBy5EgeeOABKlSowOHDh2natCktW7akRo0aGGNISkoCnJ6hS52YLALw008/UbNmzTTbw8PDGTBgAADW2rXAf4FlwA5gD/CST/HngWXW2j2e9QnAjcAh4Dcg8kLnYFL/1ypXBb0oV7vQZtl9BnI1W7bYb3XGjBns37+f1157zbstKiqKDh06sHr1au+2999/ny1btvDrr7+SmJjIzJkzue6664iNjeXtt9+mcOHCvPXWWxQsWJD169dTtGhRVq1axdy5cxk/fjzdunWjbdu2fj00Z86c8QaYL774gnLlypGQkEDTpk3p3bu3980mMTGRW2+9lYSEBJKSknj77bfTvR9NQN++mfxkydUqedSozK4y4y70TKAhJxGRLJYjR44Me1R8derUCWstx44do1ixYt7tRYoUYciQIQD069fvkh5z5cqVPPnkk1hrad++PQD3338/4Fw99f333/vdeDJv3rwX/cgQkauZemiuTnpRrnbqoZELSdVDcy1RD80/h9t6aDSHRkRERFxPgUZERERcT4FGREREXE+BRkRERFxPgUZERERcT4FGREREXE+BRkRERFxPgUZERERcT4FGREREXE93Cr466UUREZFrje4ULCIiInIhCjQi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tIlXXnmFc+fOMWLECBo0aJDp7RLJLLlz504zN6VatWre72fPns3+/fvZv38/RYsW5ZtvvmHIkCGMGDGCAQMGEBQUROXKlWnUqBEFChRg9+7dlC9fno0bN9K8eXPy5s2bZlgKICAggF69ennXjx07BsDmzZspX748cXFxBAcHExMTQ6lSpShSpEgWPQOSldatW+edixgaGsrKlSupU6cOkydPZvXq1ezatYtChQrxyCOPMGDAAN566y2/4wcNGkR8fDxRUVEkJCTQqlUrxo8fT69evejQoYN3WPSXX35hwIABrF27ll69erFhwwbq1avHuHHjyJEje6430lVOkqmKFStGcnIyQ4YMoVChQtSvX5/WrVtfVpfkli1bqFu3LvXq1WP58uUUKFAgTZkNGzawe/duOnbsSI8ePZgzZw7Tpk3z+4MtcjVKSkqibt26fktGrLWcOXOGIUOGMHz4cIwxFCxYEIAmTZrQsGFDIiIi/N5AZs+ezYkTJ6hcubLfMnjwYG+ZAwcOEBISQu7cuXnhhRcYPXo07du35/PPP6d27dqsW7eOBx54IOueBMlSQUFBPPLIIzz44IN88MEHgDPU369fP6pWrUqpUqUYNmwYERERWGv9jp00aRKvv/46ZcqUoXLlyrz88stMmDAhzWP06dOH4cOH8+GHHxIUFMT3339PfHz8JV3Jl1XUQyOZqnz58uTPn5/jx48TGBgIwLlz59INJelJSEjgwQcfpG/fvvTv3z/dMtZaevfuzdixYzl69CgFChQgODiY4ODgdC91FbmajB8/nr1795IjRw42bNhAr169qFGjRrqhf+DAgXz22WdYa+nYsSMnTpzg1KlT3iud7r//fkaNGpXmuI8++oglS5b4bTt9+rT3+wkTJtCuXTtKly7N4MGDGTx4sN88tODgYIYOHZpZTZZskiNHDu/f3qSkJO/QY8q+pKQkrLV+29Mrl5iY6Ffv0qVLAQgNDaVHjx7e3vf69et7px1kB/XQSKbKly8fnTp14oUXXiA2NpZvv/2W+fPn07p160s6ftmyZQQEBGQYZgBmzpxJtWrVqFevHkWKFOHgwYPs2bOHNWvWULRo0cxqikiWuPvuu5k1axb169fHGMO5c+c4fPgww4cPT1O2Zs2abNu2je3bt/Pll1+SI0cOunbtyk8//cS2bdvSDTMAo0ePZt26dX5LypVO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TylWrBiHDh1i165dgPM65suXj2HDhvHVV19lelvk0ijQZK0hwI/AYOA88IBnexFgmTEmDvgWeN5au+9SK+3evTvt27enZMmShIaG0r9/f8LCwli/fn0mn76I/F2xsbE0btz4osMQXbp04cSJE6xfv57WrVtTs2ZNpk6dysaNG/nss8+46667qFixIk2aNOGtt97iqaeeYt++fdx5553ExcV5h0FSWGsZPXq09w25XLlyzJ8/nzp16rBy5coM3+j/Kfr06UPPnj257rrrMizzwAMPMHToUKpXr86JEyd47733SEhIIGfOnIwcOZK77rqLPHnyEBERwdChQ+nWrRvFixe/gq0QXwo0WcQYkwdYCrwORABhwCfGmBrArUAiUB54G2euTc1LrbtQoUIsW/bnPOKuXbsyYMAANm3axCuvvMK5c+cYMWIEDRo0yLwGichfctddd1Gzpv+v98KFCylYsCD33HOPd9szzzzDl19+Sd++fRk9ejRFihQB4I477vCWueOOO/j3v//N+PHj2bBhA3ny5KF8+fJs3LiR5s2bkzdvXu/wlq+AgAC/oetjx44BsHnzZsqXL09cXBzBwcHExMRQqlQp72Nfq5YuXcrWrVuZNWsWP//8c4bl3nnnHZ588kkqVapEuXLleOCBB7yTuDt06ECHDh0A+OWXXxgwYABr166lV69ebNiwgXr16jFu3Dhy5NC1N1eKAk3WaQwEWGtHetY/McZ0BR7x2bbPGPM0cNgYU9paG325D7JhwwZ2797NlClTqFWrFitWrCAuLo4OHTrwww8/ZFJTROSvSkpKolOnTn7bjhw5QkBAAEWLFvXb/t5779GzZ09Gjx7N119/nW59hQsXJjIyksTERPLmzet3ldTs2bMpX758mjkcTzzxhDfQHDhwgPr16/PDDz/wwgsvUKtWLZYuXcqLL75Ily5dmD9//jU9qfXYsWN069aNTz75xDthOiPBwcF89tln3vX//ve/VK5cOU25Pn36MHz4cD788EOCgoL4/vvv6dKlCwsWLKBVq1aZ3QTJgAJN1skN2FTbzgN5U23L5fl6mstkraV3796MHTuWo0ePUqBAAYKDgwkODiY2NvYvnLKIZLaqVav69Zr06dOHjz/+mOTkZHr16sXTTz+d5pibbropw0uJU+bIpMy7Se2jjz5iyZIlftt8L/OeMGEC7dq1o3Tp0gwePJjBgwf7zb0LDg5m6NChl95Al1m0aBHR0dF+PV8AxhimT5/ud1l9anPnzqVHjx5+21Lm34SGhtKjRw9atGgBOJfNp1xuL1eGAk3W+QooZIzpDUwF7gPuBQZ4emrmAYWA94DF1tq4y32AmTNnUq1aNerVq8fZs2c5ePAge/bs4ciRI2n+8xOR7Ddw4ED27t3Lk08+SaFChZg1axa5c+ema9eufuUWLVrEvn0ZT6vr1q1bhr/jo0ePJjQ01G9b2bJlAYiLi2PatGls2LABcC5bnj59OgsWLPArf/jwYdauXXtN9i507tyZzp07e9e3bdtGjRo1sDb1/5/w448/UqJECQoWLMjw4cM5deqUX2/b2bNnCQ8P59NPPwWcq50WL15Mw4YNWbp0KU888UTWN0i8NLiXRTwBpSnwKHAUGA50stZuBp4EooH1wG/AY+C9Ed8vMTExF63/5MmTDBs2jGHDhgGQK1cuhg8fTsOGDenSpQvvvvtuFrRKRP6Ko0eP0qZNGzZs2MAnn3yCMYY8efKwaNEiJkyYQOfOnTl8+LC3/I8//siXX37J6tWr0yzJyckkJSVl+Fh9+vShfv36fsvx48cBGDlyJA888AAVKlTg8OHDNG3alJYtW1KjRg2MMd56d+zY4b20/J8mPDycAQMGALBlyxZCQkIoVaoUW7duZfny5eTJk8dbdsyYMYSGhlKlShXAmQe1Y8cOypQpQ4kSJXjwwQezpQ3/VCa9VCrZLnNflNBmmVqdiFzEssXebydOnMjLL79Mly5dePPNNwkICOC1116jWLFi9OrVi8TERPr06cOMGTP473//S58+fQgJCaFw4cLpDjtt2bKFn3/+mZIlSwKwatUq5s6dy/jx4+nWrRtt27b166E5c+aMN8B88cUXlCtXjoSEBJo2bUrv3r29b96JiYnceuutJCQkkJSUxNtvv53u/WgC+vbN7GcrUySPGpXdpyAXl/44aibRkJOISBaqVKkSCxYs8N47JrW8efMyYcIEnnzySYKDgwHnqqSVK1f69QakqF+//iU97sqVK3nyySex1tK+fXsA7r//fsD5fKjvv//e7y7BefPmZcuWLZfVNpGriXpork7qoRFxM58emmuNemjkb8jSHhrNoRERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREddToBERERHXU6ARERER11OgEREREdfTnYKvTnpRRETkWqM7BYuIiIhciAKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4ngKNiIiIuJ4CjYiIiLieAo2IiIi4XkB2n4BItgptlt1nINeiZYuz+wyyTEDfvtl9CvIXJI8ald2nkOXUQyMiIiKup0AjIiIirqdAIyIiIq6nQCMiIiKup0AjIiIirqdAIyIiIq6nQCMiIiKup0AjInINOnfu3GWVT05OvuxjRK4mCjRyxfXu3RtjjHcJDQ0FYMaMGX7bU5YPP/ww3Xo+/vhjqlevTp48eahTpw4AiYmJtG/fnoIFC9K4cWPi4uK85Vu1asXy5cuzvH0ivqKjoxkyZIhfWDhz5gzHjh3jwIED/PDDDyxdupRZs2axd+/eDOt5+OGHWbp0aYb7Dx8+zMMPP4y1lu+++44WLVqkKXP8+HGWLVsGQOXKlQFYtmwZR44c4eOPP6Z79+5/tZniUoMHD8YY412PjY2lU6dOBAYGUqpUKV555RWstRes44knnqBixYre9aVLl1KhQgWCg4N5//33vduNMbcYY77J9EZ4KNDIFRcbG0tERATWWqy13j+wXbp08W6z1rJnzx6KFi1K8+bN09QRGRnJc889x7vvvsvx48eZMGECAFOnTqVw4cLExMRQrVo1Jk6cCMDy5cux1tKkSZMr11ARICgoiB9++IG7776b9evXU6ZMGapXr87dd99NpUqVeOmll5g1axYbNmzg6NGjVK5c2W+ZMWMGAOfPnydnzpwZPs4zzzxD3bp1McbQoEEDoqOjvb9bKYwxPPvss+zZsweAPXv20LdvX3LlysWqVau4/fbbs+x5kKvPqVOnGDdunN+22bNnU7duXWJiYvj888+ZMWOG92cwPVFRUXzwwQfedWstPXv2ZNGiRaxevZrw8HCSk5NTdo8Fns/sdqTQRx/IFRcbG0tQUNBFyw0fPpynn36aQoUKpdnXv39/hg0bxr333gvArbfeCsC2bdto06YNgYGBNG/enIULF5KcnEz//v2ZO3duprZD5FLkz5+fTz/9lHfeeYdatWpx6NAh776goCAWL15MQMCff4p/+eUXv+NXrlzJ008/zY8//sg777zDvHnzAHj88ce57bbbAHjzzTeJi4ujr+djCYwxTJs2jWbNmrFy5UqqVq0KQKFChZg+fTrXXXcd4PRoTpkyhaCgIFasWEFSUhI///wzADfccIN6bK5xb731FvXq1fPr+XviiSfInTs3ADfffDMdOnTgm2++4fHHH0+3joEDB3LfffexY8cOAI4cOULx4sWpUaMGAOXLl+ePP/7giy++ANhtrf0xq9qjHhq54v7444+LBpqYmBg+/vhjevfunWbfzz//zL59++jQoUOafZUqVSIyMpJTp04RGRlJSEgI48aNIywsjEqVKmVWE0Qu2YYNG0hMTKR3797eN4rLceONN9KlSxdKly5Ns2bN6NKlC0eOHOHXX38F4L333mPq1KnMnj3brwenVq1avPXWW9x1112sXLkSgFdffZVevXpRu3Ztfv31Vzp16kSPHj0YOnQoxhjCwsKoVasW48eP9w5JybUpJiaGSZMmER4e7rc99c9odHQ0hQsXTreOzZs38+2339KtWzfvtmLFinHo0CF27drFrl27OHr0KPny5WPYsGEAL2d2O3yph0auuNjYWEJDQwkKCqJRo0aMGTOGG264wa/M1KlTCQ0NpXjx4mmO37lzJ6VKleKtt95i1KhRFCxYkIEDB9K9e3e6d+9O+/btKVmyJKGhofTv35+wsDDWr19/pZon4mfVqlV07dqV0aNHs2TJEj755BPvvhMnTvjNPUhOTiZv3rx+xwcHB7Nhwwby5MlD3bp1qVu3LoUKFSJ37twMHDiQDz/8kBUrVlCiRIk0j/3vf/+bAgUK0K5dO7p27crIkSOpWbMmEydOJCEhgerVqxMeHk7nzp05e/YsHTp04Pjx4xQvXtzb+ynXpj59+tCzZ09vb116Vq1axbx58/j666/T7LPW0qNHD9544w2/EJQzZ05GjhzJXXfdRZ48eYiIiGDo0KF069aNPn36HMmSxnioh0auuPXr13P27Fl++OEHcubMSatWrfz2W2uZOnWqX+r3FR8fz2+//Ubu3LmJiooiIiKCXr16sWnTJgoVKsSyZcs4efIkc+bM4fXX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\n",
      "text/plain": [
       "<Figure size 576x360 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = [\"活动分数\",\"荣誉情况\", \"阅读情况\", \"体测情况\",\"GPA\"]\n",
    "# y = [20.8, 35.1, 47.7, 45.6]\n",
    "# z = [79.2, 64.9, 52.3, 54.4]\n",
    "# y = [0.21, 0.35, 0.48, 0.46]\n",
    "# z = [0.79, 0.65, 0.52, 0.54]\n",
    "y = [42.4,14.9, 38.8, 47.6, 44.8]\n",
    "z = [57.6,85.1, 61.2, 52.4, 55.2]\n",
    "# 增加一个固定维度，长度与上述数据一样\n",
    "fix_value = []\n",
    "# 求出数据y和z的最大值，取其1/4的值作为固定长度\n",
    "value_max = max(max(y), max(z))\n",
    "fix_temp = value_max / 4\n",
    "for i in range(len(x)):\n",
    "    fix_value.append(fix_temp)\n",
    "print(fix_value)\n",
    "# 将y，z其中一个维度变为负值，我们选择z\n",
    "z_ne = [-i for i in z]\n",
    "print(z_ne)\n",
    " \n",
    "# 设置中文显示为微软雅黑\n",
    "plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']\n",
    "# 设置图表默认字体为12\n",
    "plt.rcParams['font.size'] = 12\n",
    "# 设置画布大小\n",
    "plt.figure(figsize=(8, 5))\n",
    "# 画条形图,设置颜色和柱宽，将fix_value,y,z_ne依次画进图中\n",
    "plt.barh(x, fix_value, color='w', height=0.5)\n",
    "plt.barh(x, y, left=fix_value, color='#037171', label='未获奖', height=0.5)\n",
    "plt.barh(x, z_ne, color='#FF474A', height=0.5, label='获奖')\n",
    "# 添加数据标签，将fix_value的x标签显示出来，y和z_ne的数据标签显示出来\n",
    "for a, b in zip(x, fix_value):\n",
    "    plt.text(b/2, a, '%s' % str(a), ha='center', va='center', fontsize=12)\n",
    "for a, b in zip(x, y):\n",
    "    plt.text(b + fix_temp + value_max / 20, a, \"     \"+str(b)+\"%\", ha='center', va='center')\n",
    "for a, b in zip(x, z):\n",
    "    plt.text(-b - value_max / 20 -3, a, str(b)+\"%\", ha='center', va='center')\n",
    "# 坐标轴刻度不显示\n",
    "plt.xticks([])\n",
    "plt.yticks([])\n",
    "# 添加图例，自定义位置\n",
    "plt.legend(bbox_to_anchor=(-0.02, 0.5), frameon=False)\n",
    "# 添加标题，并设置字体\n",
    "plt.title(label='19-20学年获奖与未获奖学生对比图', fontsize=14, fontweight='bold')\n",
    "# 设置绘图区域边框不可见\n",
    "ax = plt.gca()\n",
    "ax.set_axisbelow(True)\n",
    "# 设置绘图区域边框不可见\n",
    "[ax.spines[loc_axis].set_visible(False) for loc_axis in ['bottom', 'top', 'right', 'left']]\n",
    "# 使布局更合理\n",
    "plt.tight_layout()\n",
    "plt.show()\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "id": "72f873a3",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "3.56\n",
      "2.71\n",
      "74.54\n",
      "68.55\n",
      "15.48\n",
      "9.96\n",
      "1.26\n",
      "0.21\n",
      "0.04\n",
      "0.01\n",
      "31.17\n",
      "21.62\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import ast\n",
    "import re\n",
    "import matplotlib.pyplot as plt\n",
    "list_a=np.arange(11)\n",
    "p1=pd.read_csv(\"20-21train_update.csv\",low_memory=False,usecols=list_a)\n",
    "p1.head()\n",
    "#GPA分析\n",
    "with_award_GPA=[]\n",
    "no_award_GPA=[]\n",
    "#体测成绩分析\n",
    "with_award_pe=[]\n",
    "no_award_pe=[]\n",
    "#阅读情况分析\n",
    "with_award_read=[]\n",
    "no_award_read=[]\n",
    "#荣誉情况分析\n",
    "with_award_glory=[]\n",
    "no_award_glory=[]\n",
    "#论文情况分析\n",
    "with_award_topic=[]\n",
    "no_award_topic=[]\n",
    "#活动分数分析\n",
    "with_award_mark=[]\n",
    "no_award_mark=[]\n",
    "\n",
    "for i in range(0,6906):\n",
    "    get=p1[\"类型\"][i]\n",
    "    if get==\"无\":\n",
    "        no_award_topic.append(p1[\"论文情况20-21\"][i])\n",
    "        no_award_read.append(p1[\"阅读情况\"][i])\n",
    "        no_award_glory.append(p1[\"荣誉情况\"][i])\n",
    "        if p1[\"GPA-2020-2021\"][i]>0:\n",
    "            no_award_GPA.append(p1[\"GPA-2020-2021\"][i])\n",
    "        if p1[\"2020-体测\"][i]>0:\n",
    "            no_award_pe.append(p1[\"2020-体测\"][i])\n",
    "        if p1[\"活动分数\"][i]>0:\n",
    "            no_award_mark.append(p1[\"活动分数\"][i])\n",
    "    elif get!=\"无\":\n",
    "        with_award_topic.append(p1[\"论文情况20-21\"][i])\n",
    "        with_award_read.append(p1[\"阅读情况\"][i])\n",
    "        with_award_glory.append(p1[\"荣誉情况\"][i])\n",
    "        if p1[\"GPA-2020-2021\"][i]>0:\n",
    "            with_award_GPA.append(p1[\"GPA-2020-2021\"][i])\n",
    "        if p1[\"2020-体测\"][i]>0:\n",
    "            with_award_pe.append(p1[\"2020-体测\"][i])\n",
    "        if p1[\"活动分数\"][i]>0:\n",
    "            with_award_mark.append(p1[\"活动分数\"][i])\n",
    "with_averge_GPA='{:.2f}'.format(np.mean(with_award_GPA))\n",
    "no_averge_GPA='{:.2f}'.format(np.mean(no_award_GPA))\n",
    "with_averge_pe='{:.2f}'.format(np.mean(with_award_pe))\n",
    "no_averge_pe='{:.2f}'.format(np.mean(no_award_pe))\n",
    "with_averge_read='{:.2f}'.format(np.mean(with_award_read))\n",
    "no_averge_read='{:.2f}'.format(np.mean(no_award_read))\n",
    "with_averge_glory='{:.2f}'.format(np.mean(with_award_glory))\n",
    "no_averge_glory='{:.2f}'.format(np.mean(no_award_glory))\n",
    "with_averge_topic='{:.2f}'.format(np.mean(with_award_topic))\n",
    "no_averge_topic='{:.2f}'.format(np.mean(no_award_topic))\n",
    "with_averge_mark='{:.2f}'.format(np.mean(with_award_mark))\n",
    "no_averge_mark='{:.2f}'.format(np.mean(no_award_mark))\n",
    "print(with_averge_GPA)\n",
    "print(no_averge_GPA)\n",
    "print(with_averge_pe)\n",
    "print(no_averge_pe)\n",
    "print(with_averge_read)\n",
    "print(no_averge_read)\n",
    "print(with_averge_glory)\n",
    "print(no_averge_glory)\n",
    "print(with_averge_topic)\n",
    "print(no_averge_topic)\n",
    "print(with_averge_mark)\n",
    "print(no_averge_mark)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "id": "f3ce1325",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[21.425, 21.425, 21.425, 21.425, 21.425, 21.425]\n",
      "[-59, -80, -85.7, -60.8, -52.1, -56.8]\n"
     ]
    },
    {
     "data": {
      "image/png": "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iFtd5L/rOr8ODTmJiKQyLy+vq/aoJNayZUustURGRuLn5+c+njNnTgYMGABA9+7db+gxV6xYQfv27bHW0qxZMwBq1aoFOKun1qxZk+SGk97e3tf8qhCRO516aO5MelE8hXpoJCVX9NDcTdRD89/haT00mkMjIiIiHk8BjYiIiHg8BTQiIiLi8RTQiIiIiMdTQCMiIiIeTwGNiIiIeDwt274z6UUREZG7jZZti4iIiFyLAhoRERHxeApoRERExOMpoBERERGPp4BGREREPJ4CGhEREfF4CmhERETE4ymgEREREY+ngEZEREQ8ngIaERER8XgKaERERMTjKaARERERj6eARkRERDyeAhoRERHxeApoRERExOMpoBERERGPp4BGREREPJ4CGhEREfF4CmhERETE4ymgEREREY+ngEZEREQ8ngIaERER8XgKaERERMTjKaARERERj6eARkRERDyeAhoRERHxeOnTugIiqS6oXlrXQP5rFi9I6xqkmvTduqV1FeQK8SNGpHUV7gjqoRERERGPp4BGREREPJ4CGhEREfF4CmhERETE4ymgEREREY+ngEZEREQ8ngIaSVXLly+nfPnyZMqUicKFCxMTE8OBAwd46qmnyJw5M2XKlGHjxo0pnrtz507Kly+Pt7c31apV4/fffwcgNjaWZs2akS1bNmrUqEF0dLT7nMaNG7N06dLb0TSRm7Js2TK+++676+a7ePEiHTp0ICoqKlnavffem+I5YWFh9OnTJ9nxypUrc/DgwZuvrHisHTt2UKlSJXx8fChcuDCTJk1yp12+fJl+/fpRoEABcuTIQbdu3bDWJivjwIED1KtXj8yZM1OoUCHGjBnjTlu0aBGFChXC39+fzz77zH1806ZNPPbYY6nbuOvQfWgk1WzcuJHg4GAmTpxI/fr12blzJxkyZOC5557jkUceYd68eXzwwQcEBweze/du0qVL5z43Pj6eWrVqMXjwYBo3bszIkSNp0aIF69atY9KkSeTIkYPDhw/z1ltvMX78eHr27MnSpUux1lKzZs00bLVIygICAnjsscfImDEjq1atYubMmcnyREREMHfuXPLkyUNQUBBz5syhVq1a7vSjR49SqlQp9/748eN55JFHuHDhAlFRUZw9e5YaNWq403fs2EGDBg3ImDEjAPXq1aNUqVIYY2jUqBHh4eGUKFGCQoUKJanHxYsXyZkzJ+vXr7/VT4OkssuXLxMaGkqZMmVYvnw5jRo14rHHHqNYsWKMGTOGWbNm8eOPP2KtpX79+hQrVoxXX301SRmffPIJzz33HDNnzmTDhg3UrVuXBx54gOrVq9OpUyfmz59PxowZeeKJJ3juuedInz49ISEhjBo1Km0a7aKARlJN7969ee211wgODgagfPnybN++nS1btrBs2TK8vb3p3bs3I0eOJCwsjGrVqrnPjYyMJDY2lhYtWgAQEhLC//3f/wGwfft2mjRpQtasWalfvz5z584lPj6eHj16MGvWrNvfUJHrOHv2LD4+PkyfPp3s2bNz3333sWvXLgA+/vhjXnjhBXLkyEHz5s0BeP/998mSJQvZs2dn+/bt7nLuvffeJPvgBDmnTp1ixYoVLFmyhB49erB//34ARo0aRcOGDcmRIwcADRs2JC4ujieffBIvLy/KlClD2bJlWb16dZIyw8PD3f+34llKly7t/r1+/fr4+vpy+PBhihUrxvTp03njjTcoUqQIAL169WLs2LHJAprevXu7g+BHH32U2rVr89NPP1GyZEly587tfoyCBQty8uRJvv/+e+6//37Kly9/m1qZMgU0kirOnTvH0qVL+fDDD5McX7duHaVLl8bb2xuADBkyULp0abZt25YkoMmTJw+lSpVi6tSpBAcHM2LECBo2bAhAYGAg8+bN49FHH2XevHmUKlWK0NBQ6tSpQ2Bg4O1rpMgNWr9+PePGjWP69OnExsby7rvvct9993H06FEWLlxI+/btk+Q3xtCrVy+mT5+eJEg/efJkkkCjefPm7Nq1i9jYWKpWrcrChQvp0KEDWbJkASBz5swEBgbi5+cHQNasWfH392fu3Ll0796diRMn3obWS1o4ffo006ZNIyAggMqVKwNw/vx5jDHuPP7+/uzcuTPZuQnBTIKIiAiqVauGn58fhw4dcgfjJ06cIHPmzAwaNIgffvghFVtzYxTQSKrYvXs34MwbqFq1KsYYXn31VTJlykTu3LmT5M2VKxcnT55MVkb//v2pXr06rVu3JkuWLKxZswaADh060KxZM/LmzUtQUBA9evSgTp06rF27NvUbJvIvlSxZknvuuYfu3bu7j5UuXdp9kWjevDk5cuSgU6dOtGjRgqJFi/L666/z/vvv07ZtWwYMGMDUqVOZNm0aBw4cYO/evTz22GNER0cT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ZswYli1b5h7eSix9+vR07tzZvR8ZGcmZM2coUaIE/v7+REdH4+/vz+HDh8mXL98159B4ync5hYeHc99993HmzBmyZs0KOBN633zzTTZt2sQff/xB6dKludY18MSJE3z++ee8//77bN26lXvvvTdJ+p9//kmTJk0ICwujR48erFu3jooVKxIaGoqXl8euuUlNqToHVz00qacGkN5aO9S1/7Uxpg3wfKJje13f+n3EGBNgrY24spD58+dTpEiRqwYz69at4/fff+eTTz6hXLlyLF++nOjoaJo3b86GDRtSo10ichPi4uJo2bJlkmPHjh0jffr03HPPPUmOf/zxx3Tq1ImRI0fy448/plhejhw5mDdvHrGxsXh7eydZJTV9+nQKFiyYbC5H27Zt3QHNvn37qFy5Mhs2bODNN9+kXLlyLFq0iLfeeovWrVszZ86cu3Jya2RkJO3atePrr79293Zfj5+fH126dGHWrFl88803hISEJEnv2rUrQ4YM4csvv8TX15c1a9bQunVrvvvuOxo3bpwazZBrUECTejKSqKfF5TLON3cnlsH1M8UvuZw3bx7169dP8QGstYSEhDB69GhOnDiBj48P/v7++Pv7ExUV9W/qLiK3yP3335+k16Rr167MmDGD+Ph4OnfuzCuvvJLsnAceeOCqS4oT5sgkzLu50ldffcXChQuTHEu8zHvs2LE0bdqUgIAA+vfvT//+/ZPMvfP392fgwIE33kAPMX/+fCIiIqhWrVqS48YYPv300yTL6a/k5eXlXomWIGH+TVBQEB07dqRhw4aAs1w+YZm93F4KaFLPD0B2Y0wIztcsPAU8CfRy9dTMxrmr8cc4X70QnWIhP/xw1X+0qVOnUrx4cSpWrMjFixfZv38/u3fv5tixY8k++YlI2uvTpw979uyhffv2ZM+enWnTppExY0batGmTJN/8+fPZu/eq0+po167dVf/HR44cSVBQUJJjCUMl0dHRTJ48mXXr1gHO8uVPP/2U7777Lkn+I0eOEBYWdlf1MrRq1YpWrVq597dv337VIadBgwbRuHFjChQowIwZM9i+fTt169Z1p1+8eJGePXvyzTffAM5qpwULFlC1alUWLVpE27ZtU79BkowCmlRirY02xtQFPsS5I3E40NJau8UYMw4Yg3NX4wU43wSOMSYA+CkiIoJ8+fJx9OhRjhw5QtmyZZOV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\n",
      "text/plain": [
       "<Figure size 576x360 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = [\"活动分数\",\"论文情况\",\"荣誉情况\", \"阅读情况\", \"体测情况\",\"GPA\"]\n",
    "# y = [20.8, 35.1, 47.7, 45.6]\n",
    "# z = [79.2, 64.9, 52.3, 54.4]\n",
    "# y = [0.21, 0.35, 0.48, 0.46]\n",
    "# z = [0.79, 0.65, 0.52, 0.54]\n",
    "y = [41,20,14.3, 39.2, 47.9, 43.2]\n",
    "z = [59,80,85.7, 60.8, 52.1, 56.8]\n",
    "# 增加一个固定维度，长度与上述数据一样\n",
    "fix_value = []\n",
    "# 求出数据y和z的最大值，取其1/4的值作为固定长度\n",
    "value_max = max(max(y), max(z))\n",
    "fix_temp = value_max / 4\n",
    "for i in range(len(x)):\n",
    "    fix_value.append(fix_temp)\n",
    "print(fix_value)\n",
    "# 将y，z其中一个维度变为负值，我们选择z\n",
    "z_ne = [-i for i in z]\n",
    "print(z_ne)\n",
    " \n",
    "# 设置中文显示为微软雅黑\n",
    "plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']\n",
    "# 设置图表默认字体为12\n",
    "plt.rcParams['font.size'] = 12\n",
    "# 设置画布大小\n",
    "plt.figure(figsize=(8, 5))\n",
    "# 画条形图,设置颜色和柱宽，将fix_value,y,z_ne依次画进图中\n",
    "plt.barh(x, fix_value, color='w', height=0.5)\n",
    "plt.barh(x, y, left=fix_value, color='#037171', label='未获奖', height=0.5)\n",
    "plt.barh(x, z_ne, color='#FF474A', height=0.5, label='获奖')\n",
    "# 添加数据标签，将fix_value的x标签显示出来，y和z_ne的数据标签显示出来\n",
    "for a, b in zip(x, fix_value):\n",
    "    plt.text(b/2, a, '%s' % str(a), ha='center', va='center', fontsize=12)\n",
    "for a, b in zip(x, y):\n",
    "    plt.text(b + fix_temp + value_max / 20, a, \"     \"+str(b)+\"%\", ha='center', va='center')\n",
    "for a, b in zip(x, z):\n",
    "    plt.text(-b - value_max / 20 -3, a, str(b)+\"%\", ha='center', va='center')\n",
    "# 坐标轴刻度不显示\n",
    "plt.xticks([])\n",
    "plt.yticks([])\n",
    "# 添加图例，自定义位置\n",
    "plt.legend(bbox_to_anchor=(-0.02, 0.5), frameon=False)\n",
    "# 添加标题，并设置字体\n",
    "plt.title(label='20-21学年获奖与未获奖学生对比图', fontsize=14, fontweight='bold')\n",
    "# 设置绘图区域边框不可见\n",
    "ax = plt.gca()\n",
    "ax.set_axisbelow(True)\n",
    "# 设置绘图区域边框不可见\n",
    "[ax.spines[loc_axis].set_visible(False) for loc_axis in ['bottom', 'top', 'right', 'left']]\n",
    "# 使布局更合理\n",
    "plt.tight_layout()\n",
    "plt.show()\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.8"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
